arm64: dts: qcom: shikra: Wire up usb-role-switch for USB Type-C ports - #999
arm64: dts: qcom: shikra: Wire up usb-role-switch for USB Type-C ports#999akakum-qualcomm wants to merge 5 commits into
Conversation
Add support for both USB controllers and their respective phys on Shikra. Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com> Signed-off-by: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260811-usb-shikra-v7-v7-1-753e928f37ae@oss.qualcomm.com [submitter: qcom-6.18.y already carried an older v1/v2-era usb_1 and usb_qmpphy node definition (FROMLIST 90ffd3d "Add USB changes for Shikra" and 1c76289 "Add changes for usb on IQS platform"). Per request, landed v7 fresh: replaced the old usb_qmpphy node (qcom,shikra-qmp-usb3-phy) and old usb_1 node with v7's versions (qcom,shikra-qmp-usb3-dp-phy, relocated usb_1 block, new usb_2 block), rather than layering v7 on top of the old nodes. Resulting content matches the original patch; no semantic changes beyond superseding the older node definitions.]
On Shikra CQS/CQM platforms, usb-role-switch is handled by PM4125 on primary Type-C port and Cypress PD controller CYPD6129 on second Type-C port. On Shikra IQS platform, usb-role-switch is handled by Cypress PD controller CYPD6129 on both Type-C ports. Since those changes are not yet present, enabling both USB controllers in device mode. Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com> Signed-off-by: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260811-usb-shikra-v7-v7-2-753e928f37ae@oss.qualcomm.com [submitter: shikra-cqm-evk.dts, shikra-cqs-evk.dts and shikra-iqs-evk.dts already carried &usb_1_hsphy and &usb_qmpphy nodes from earlier v1/v2-era FROMLIST commits (90ffd3d, 1c76289). Only the missing &usb_2_hsphy node from this patch was added to those three files; shikra-evk.dtsi had no prior USB wiring and was applied as-is. Resulting content matches the original patch; no semantic changes.]
…roller Add the device-tree binding documentation for the Cypress cypd6129 and cypd6229 dual Type-C PD controllers. These are used on Shikra CQM/CQS/IQS platforms to handle usb-role-switch for the USB Type-C ports over an I2C interface, similarly to the existing cypd4226 binding. cypd6229 is a variant of cypd6129 and is described with a "cypress,cypd6129" fallback compatible string. Acked-by: Conor Dooley <conor.dooley@microchip.com> Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260820145036.2035641-2-akash.kumar@oss.qualcomm.com
Add cypd6129 and cypd6229 compatible strings to the of_device_id match table so the driver binds to boards describing these Cypress PD controllers in their device tree. No other driver changes are needed since the chip is accessed through the same generic UCSI/HPI I2C register protocol as the existing cypd4226 support. Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260820145036.2035641-3-akash.kumar@oss.qualcomm.com
…ype-C ports On Shikra CQS/CQM platforms, usb-role-switch is handled by PM4125 on the primary Type-C port and Cypress PD controller CYPD6129 on the second Type-C port. On Shikra IQS platform, usb-role-switch is handled by Cypress PD controller CYPD6129 on both Type-C ports. Add the CYPD6129 typec node under i2c3, wire its connector endpoints to the corresponding DWC3 controller ports via remote-endpoint phandles, and switch the associated USB controllers to OTG mode so role switching can take effect. Signed-off-by: Akash Kumar <akash.kumar@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260820145036.2035641-4-akash.kumar@oss.qualcomm.com [submitter: qcom-6.18.y already carried a PENDING commit (102ec26 "arm64: dts: qcom: Add typec role switching changes to shikra") that wired shikra-cqm-evk.dts and shikra-cqs-evk.dts's usb_1_dwc3_hs/usb_qmpphy_out endpoints to a PM4125-based typec connector (&pm4125_hs_in/&pm4125_ss_in). The version of this patch sent to the list wired CYPD6129 to usb_1_dwc3_hs on CQM/CQS instead, which would have conflicted with that PENDING commit's PM4125 wiring (a DT endpoint can only have one remote-endpoint phandle) and, per updated board-wiring information, does not match the actual hardware: on CQM/CQS, CYPD6129 is wired to the second Type-C port (usb_2) and PM4125 continues to own the primary Type-C port (usb_1), unchanged. This local copy of the patch has been corrected accordingly: the PENDING commit's &pm4125_hs_in/&pm4125_ss_in/usb_1/usb_qmpphy_out wiring on CQM/CQS is restored as-is, and CYPD6129's connector endpoint is wired to the newly added usb_2/usb_2_dwc3_hs instead of usb_1. The PENDING commit's shikra-cqm-som.dtsi portion (&pm4125_typec connector and &pm4125_vbus regulator nodes) is untouched and left in history as-is. shikra-iqs-evk.dts had no such conflict (no PM4125) and is applied as-is. The series needs to be resent upstream with this corrected CQM/CQS wiring.]
|
Merge Check Failed: No CR Numbers Found Error: No Change Request numbers were found. Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests. |
3 similar comments
|
Merge Check Failed: No CR Numbers Found Error: No Change Request numbers were found. Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests. |
|
Merge Check Failed: No CR Numbers Found Error: No Change Request numbers were found. Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests. |
|
Merge Check Failed: No CR Numbers Found Error: No Change Request numbers were found. Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests. |
|
Merge Check Failed: No Change Task Found No associated change tasks found for CR 4652998 on any of the following entities: Entities:
CR: 4652998 Please ensure the CR has a change task associated with at least one of the entities for this branch. |
On Shikra CQS/CQM platforms, usb-role-switch is handled by PM4125 on
the primary Type-C port and Cypress PD controller CYPD6129 on the
second Type-C port. On Shikra IQS platform, usb-role-switch is
handled by Cypress PD controller CYPD6129 on both Type-C ports.
Add the CYPD6129 typec node under i2c3, wire its connector endpoints
to the corresponding DWC3 controller ports via remote-endpoint
phandles, and switch the associated USB controllers to OTG mode so
role switching can take effect.
Signed-off-by: Akash Kumar akash.kumar@oss.qualcomm.com
links: https://lore.kernel.org/all/20260811-usb-shikra-v7-v7-0-753e928f37ae@oss.qualcomm.com/
https://lore.kernel.org/all/20260820145036.2035641-4-akash.kumar@oss.qualcomm.com/
CRs-Fixed: 4652998